Multimedia network system with content importation, content exportation, and integrated content management

ABSTRACT

This system provides wired and/or wireless access throughout a multimedia network built on a distributed architecture which can be transparent to the user. This multimedia network includes content which is imported or generated within the network. The system allows for the content provider to determine the license status of content and update the license status of content which was previously provided by that provider. The external content can be accessed in real time or downloaded and stored within the system for later access at the convenience of the user. The usage of some content is controlled by the use of encryption and other protection methods. The system allows for storage of live video by storing the digitized video and allowing the user to control how, when and where the content is viewed. The system makes available multiple multimedia services to all users in the network or connected via the internet.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of and claims priority to U.S. patentapplication Ser. No. 15/713,832, filed Sep. 25, 2017, which is acontinuation of and claims priority to U.S. patent application Ser. No.15/054,198, filed Feb. 26, 2016, now patented as U.S. Pat. No.9,805,174, which is a continuation of and claims priority to U.S. patentapplication Ser. No. 14/490,033, filed Sep. 18, 2014, now patented asU.S. Pat. No. 9,300,657, which is a continuation of and claims priorityto U.S. patent application Ser. No. 13/109,202, filed May 17, 2011, nowpatented as U.S. Pat. No. 8,868,687, which is a division of and claimspriority to U.S. patent application Ser. No. 12/959,655, filed Dec. 3,2010, now patented as U.S. Pat. No. 9,219,729, which is a division ofand claims priority to, U.S. patent application Ser. No. 11/132,771,filed May 19, 2005, which claims priority to U.S. Provisional PatentApplication Ser. No. 60/572,365, filed May 19, 2004, each of which ishereby incorporated herein by reference in its entirety for allpurposes.

FIELD OF THE INVENTION

The present invention relates generally to the field of managing digitalinformation and more particularly to the field of creating, importing,exporting, and accessing the digital information via networkedmultimedia systems.

BACKGROUND OF THE INVENTION

The possibility of downloading a quality movie via the internet, or someother data network, also called video on demand (VoD), using currentbroadband connections such as cable or DSL, has been simplified by therecent introduction of the H.264 (also known as MPEG-4 AVC) andMicrosoft Windows Media Video 9 (WMV9) codecs. However, the issue ofcontent protection (for the content being downloaded from the contentprovider)′ has been a major obstacle to allowing consumers to rent orpurchase digital video disk (DVD) quality video via the internet, orsome other data network. Thus, a system is needed which will provideprotection for the content downloaded while, at the same time, willallow ease of use and convenience for the consumer.

One of the issues looming on the horizon is the potential use of a“broadcast flag” to protect broadcast digital TV content from beingfreely distributed to unauthorized parties. However, the “fair use”doctrine allows the consumer to record and reuse content which they ownor receive. Using this criterion, a system could allow a user totransfer authorized content anywhere within the system network,including via a secure connection on the internet, for usage at theuser's convenience.

Another important development has been the ability to record an incomingvideo stream in digitized form onto a mass storage device such as a harddisk drive, and playback that recorded video as desired by the user.This functionality has become known as a digital video recorder (DVR) orpersonal video recorder (PVR) and is viewed as a superior alternative toconventional video tape recorders for capture and subsequent playback ofprogramming content. The DVR is located within the consumer's premises,and it typically may be used by two or more users.

Televisions have become so prevalent in the United States, that thetypical household may have two or more television sets. Each televisionset requires its own DVR, if the consumer wishes to have access to theenhanced functionality. However, because DVRs can be expensive, usersmay be hesitant to purchase additional DVRs. These DVRs are typicallyconfigured as standalone units with limited ability to network orinterconnect with other DVRs at the consumer's premises. In the caseswhere networking is available, the setup can be cumbersome and requireconsiderable technical expertise and time to accomplish.

The current multimedia networking options are rather sparse and, for themost part, are PC centric and/or limited in the scope of options whichthey offer the user. Many multimedia products typically provide limitedaccess to multimedia services and do not easily integrate with productsproviding different multimedia services or from different vendors. Somepotential multimedia products such as digital cameras, video games,telephony and internet browsing have had limited adoption intomultimedia systems. The ideal multimedia system would be based upon adistributed architecture and would appear as transparent as possible tothe consumer.

The conversion to wireless communication will simplify the operation ofand vastly increase the flexibility of multimedia networks. Upcomingwireless protocols such as IEEE 802.16, IEEE 802.11n, ultra broadband,and ultra wideband will advance this initiative tremendously. With thesechanges, the possibility of receiving and enjoying the maximummultimedia experience, even in a mobile environment, becomes much moreattainable.

Therefore, a need exists for systems and methods that easily downloadquality video/audio and other content via the internet, or other datanetwork, that have reliable and flexible content protection, thatincorporate DVRs and that ease the use of multimedia networks.Specifically, there exists a need for systems and methods which allowmultiple users operating discrete DVRs, or multimedia components, withina premise or vehicle to have access to quality video/audio content viathe internet, or some other data network, received by and/or stored inanother DVR or storage device. There also exists a need to provide ascaled down access client which can access all system content but at thesame time be relatively inexpensive. A system is also needed whichallows the content provider to have an interactive relationship with theuser network to determine the license status of all content provided bythat provider located on the network. An additional need is the abilityto easily move content to a portable multimedia device or to a validsystem device via the internet, or other data network, for remote usageat the convenience of the consumer.

SUMMARY OF THE INVENTION

The invention provides a multimedia networking system. The inventionutilizes various multimedia components networked together using eitherwired or wireless networking methods and protocols. This network alsoconnects to the internet for retrieval and sharing of content. Thesystem allows for parts of individual components to be shared with othercomponents throughout the system to optimize the utilization of variouscomponents.

The invention allows for the importation of content from an externalcontent provider via the internet. This provides the opportunity for theuser to download high quality movies, music, video games or othercontent for rental and purchase, through an easy and convenient process.This method also allows considerable flexibility for the contentprovider in the way the content is distributed and managed. The entireprocess is automated and very easy for the user to accomplish from anycomponent in the system.

The invention allows the system to optimize the handling of content andmore easily recover from the failure of system components. The systemchooses the most efficient location and handling method for incoming andinternally created content depending upon several factors including, butnot limited to, processor utilization rate, processor speed, hard drivememory space available, fragmentation of data on hard drive, speed ofhard drive data access, scheduled recording, quality of networkconnection and user preferences. Another important capability is beingable to move content to different locations, so it is still available tousers, when a component is being removed from the system. Anotherexample of the system flexibility is the ability of the system to useany available tuner to view or record a program. This allows anopportunity to record more programs simultaneously and also allows moreefficient use of available TV tuners.

The invention allows the access to the multimedia network to becomevirtually transparent to the user, whether within the confines where themain network resides or at a remote location connected via the internet,or some other data network. The user can freely import, create, andshare content within the network.

The invention accepts various types of multimedia content such as analogvideo, analog audio, digital video and analog video. Some of thesearrive in the form of TV input and may come in several varieties such asthe analog NTSC or PAL broadcasts. Analog TV streams are converted to aH.264, WMV9, or MPEG2 formatted data stream, for efficient digitalsignal handling.

The system also accepts, digital TV forms such as Digital SatelliteSystem (DSS), Digital Broadcast Services (DBS), or Advanced TelevisionStandards Committee (ATSC). Another source is the playback of a DVD froma valid system device or streamed from an external DVD player.

The invention allows a digital camera to be connected to the system andthen have the digital video from that digital camera stored within thesystem or streamed to any point in the system. The invention allows VoiPtelephony using packet switching technology. The system can accept VoiPphone calls, accept messages, and give voice mail. The invention allowsthe importation and usage of video games. The games can be played by theuse of emulation software or a hardware interface. The invention allowsthe user to connect the output from a radio tuner into the system whichthen allows the audio from that radio tuner to be streamed throughoutthe network. The radio tuner can also be adjusted remotely from anywherein the system if it is type designed as system component.

The invention allows the use of an RFID tag to be used to automaticallylog the user into system via the use of an infrared (“IR”) or radiofrequency (“RF”) remote control. The RFID tag referenced by the systemfor the user can be updated by the user if the user changes the RFID taghe or she is using. This change may be useful for security or if theoriginal tag is lost or damaged.

The invention allows the user to control functions of the system fromany component linked to the network and properly designated to accessthe network. These control functions may include importation of content,access to content, and handling of content. Among the handling optionsare the typical options available when viewing a digital video disk(DVD) such as fast forward, rewind, play, pause, fast/slow forward playand fast/slow reverse play.

It should be emphasized that the embodiments of the invention describedabove are merely possible examples, among others, of theimplementations, setting forth a clear understanding of the principlesof the invention. Other details and advantages of the invention willbecome apparent from the following detailed description in combinationwith the accompanying figures illustrating the principles and operationof the invention.

Many variations and modifications may be made to the above describedembodiments of the invention without departing substantially from theprinciples of the invention. All such modifications and variations areintended to be included herein within the scope of the disclosure andinvention and protected. In addition, the scope of the inventionincludes embodying the functionality of the preferred embodiments of theinvention in logic embodied in hardware and/or software configuredmediums.

Advantages of the Present Invention

1. The system comprises at least one multimedia server or multimediastorage server. 2. The system may have multiple multimedia servers. 3.The system may have multiple local multimedia clients. 4. The system mayhave multiple remote multimedia clients. 5. The system may have multiplemultimedia storage servers. 6. The system may have multiple DVD/CDplayer/recorders. 7. The system may have multiple radio players. 8. Thesystem may have multiple digital cameras. 9. The system may havemultiple video game players. 10. The system may have multiple telephonytransceivers. 11. Content may be generated within the system or receivedfrom an external source. 12. The system content may contain, but is notlimited to, video data, audio data, digital images, video game software,and system data. 13. The system may accept content from non-systemsources such as, but not limited to, digital camcorder, analogcamcorder, digital camera, VCR, MP3 player, PDA, and/or a computer. 14.The system may accept local data input using protocols such as, but notlimited to, Universal Serial Bus (USB) and Firewire. 15. The system mayrecord programs from a television (TV) signal input for viewing at somefuture time. 16. The system may have a programming program guide toallow for easy selection of programs to be recorded. 17. All systemcomponents may share a single program guide via the system network. 18.The system may allow the recording schedule to be updated via theinternet or other data network. 19. The system may allow viewing ofinternet pages and access to internet page content 20. The system mayallow the use of an e-mail client for access to e-mail via the internetor some other data network. 21. The system may have a virus protectionprogram installed or available. 22. The system may provide voice overinternet protocol (VoiP) or a similar type of telephony. 23. The systemmay automatically notify a user when a telephone call is received viathe system. 24. The user may use the VoiP capabilities without the lossof access to any of other system functionality. 25. The system mayautomatically answer a phone call, received via the system, and acceptvoice mail. 26. The system may contain a system clock and a displayclock. 27. The system clock may be automatically adjusted via theinternet, or some other data network. 28. The system may allow user toadjust the display clock. 29. The display clock may be synchronized withthe system clock at the command of the system or when display clocksynchronization is done via the internet or some other data network. 30.The system may block usage of protected content if the system clock hasbeen reset, by events such as system failure or programmatic adjustment,without connection to the internet, or some other data network, for timeresynchronization of the system clock. 31. External content may bereceived via various transmission sources such as, but not limited to,RF sources like IEEE 802.16, ultra broadband, satellite, 3G, GPRS or TVantenna and terrestrial sources like cable or DSL (digital subscriberline). 32. The system may interact with a protected content providerinternet web server, or a comparable device, to test the connectionspeed and report to the user the estimated download time for therequested content, before the user has to choose to begin the downloadprocess. 33. The system may interact with the protected content providerinternet web server, or a comparable device, to automatically downloadcontent. 34. The system may interact with the protected content providerinternet web server, or a comparable device, to automatically resumedownload when an interruption occurs. 35. The system may interact withthe protected content provider internet web server, or a comparabledevice, to adjust the time period for which the content license wasoriginally granted. 36. The system may interact with the protectedcontent provider internet web server, or a comparable device, todetermine the license status of content previously supplied by thatcontent provider. 37. The system may interact with the protected contentprovider internet web server, or a comparable device, to verify that thesystem device receiving content is a valid device type. 38. The systemmay interact with the protected content provider internet web server, ora comparable device, to update data within the software or hardware ofthe system, which may be used in a security algorithm for access to thecontent of that content provider. 39. The system may interact with theprotected content provider internet web server, or a comparable device,to a renew content license without downloading the content again. 40.The system may interact with the protected content provider internet webserver, or a comparable device, to limit the number of times protectedcontent can be viewed. 41. The system may require both a valid devicetype and a valid content license to grant access to content for usage.42. Content may be encrypted and/or locked and may allow decryptionand/or unlocking, for use, when a correct security algorithm is used.43. A security algorithm and/or data used to decrypt and/or unlockprotected content may be embedded in the hardware of the system. 44. Thesystem may use security protocols such as, but not limited to, VPN(virtual private network), WPA (WiFi Protected Access) and/or PKI(public key infrastructure). 45. When new system components are added,the system may automatically configure the new components in a fashionsimilar to “plug-and-play” and may require the user to login via theprompt on the new device display or to accept the new device via theprompt on the primary multimedia server display or the designateddisplay for the multimedia storage server. 46. The system componentscommunicate via wired protocols such as, but not limited to, ethernetand/or wireless protocols such as, but not limited to, IEEE 802.11,Bluetooth, or ultra wideband. 47. The system may comprise multiplemultimedia servers, wherein one server is designated as the primarymultimedia server. 48. The system may comprise additional multimediaservers, which can be considered secondary multimedia servers. 49. Allsecondary multimedia servers and multimedia storage servers may containsome data, which is duplicated from the primary multimedia serverperiodically, to allow the secondary multimedia server, or multimediastorage server, to be automatically reassigned as the system controller,if the original primary multimedia server is unexpectedly removed fromthe system. 50. If the primary multimedia server is removed from thesystem unexpectedly, the system may automatically reassign a secondarymultimedia server as the new primary multimedia server, if a secondarymultimedia server is available. The multimedia storage server can takesystem control, if a secondary multimedia server is not available. 51.The user may request removal of a multimedia server or a multimediastorage server from the system. 52. When requesting removal of amultimedia server or a multimedia storage server from the system, thesystem may allow transfer of content before removal from the system. 53.When requesting removal of the primary multimedia server, the system mayverify the availability of and then assign system control to a newprimary multimedia server or multimedia storage server. 54. The systemmay allow transfer of content within the system at any time, by thesystem user which owns content. 55. Remote multimedia clients may bedifferent types and may contain video/audio, and/or audio and/or otherdata. 56. Remote multimedia clients may be detached from system forremote use of content. 57. Detached remote multimedia clients may allowunlimited use of unprotected content and usage of protected content forthe time specified by and according to the guidelines specified by thecontent provider. 58. The remote multimedia client may prohibit accessto protected content if the system clock is reset by events such assystem failure or programmatic adjustment. 59. When it is reconnected tothe system, the remote multimedia client may update the license statusof all protected content which it contains, based upon information aboutthe license status of the same protected content located in permanentstorage locations within the system. 60. The system may communicate withand service requests from non-system devices, but those devices may havelimited access to protected content. 61. The system may allow multipleuser accounts to be created. 62. All content may be assigned to a usercreated account or may be assigned to the system default account. 63.All video content assigned to a system user may be viewed as a singleconsolidated list, viewed as content per server, sorted chronologically,or sorted using other user determined criteria. 64. The system may storepreferences for each user such as, but not limited to, content view,language, or background theme. 65. When a request to store content isgiven, the system may select the most efficient location within thesystem to store that content based upon various criteria such as, butnot limited to, processor utilization rate, processor speed, hard drivememory space available, fragmentation of data on hard drive, speed ofhard drive data access, scheduled recording, quality of networkconnection, and user preferences. 66. The system may monitor thefragmentation of hard drive, or other mass storage device, and mayprompt the user to conduct data defragmentation when it is determined tobe advantageous. 67. The system may automatically scheduledefragmentation, with user approval, based upon information such as, butnot limited to, upcoming recording sessions, local time of day, typicalusage patterns, and memory space available. 68. When scheduling moresimultaneous recordings than the number of tuners which exist in thesystem, the system may prompt the user to approve the action. 69. Thesystem may be able to receive both analog and digital televisionbroadcasts from various sources such as, but not limited to, cable,satellite, and other RF sources. 70. The system may convert all analogtelevision information to a digital format. 71. The system may recognizeincoming digital video formats to avoid unnecessary conversionprocesses. 72. The system may encode and decode video information, asneeded, to or from various digital video formats such as, but notlimited to, MPEG2 (Motion Picture Experts Group-2), H.264 (also known asMPEG-4 AVC), and Microsoft Windows Media Video 9 (WMV9) depending uponuser requests and system needs. 73. The system may store digitalinformation on the hard drive, or appropriate mass storage device,located on a multimedia server, multimedia storage server, or othervalid storage device. 74. The system components which receive anexternal television signal may convert that signal to an appropriatedigital format and store the information on a storage media locatedsomewhere within the system. 75. The system components which do notreceive an external television signal may receive digital televisioninformation from another system device which has a television tuneravailable. 76. The local multimedia client preferably does not includemass storage space for content. If the local multimedia client does nothave mass storage space for content, then the local multimedia clientcan be connected to the system to gain access to full systemcapabilities. 77. The local multimedia clients may or may not have aconnection to receive a television signal from outside the system. 78.The digital video information, from a system component, which waspreviously stored, may then be sent to that system component, specifiedby the system, at the rate specified by the component receiving theinformation. 79. The multimedia server, the local multimedia client, theremote multimedia client, or the radio player may have multiple tuners.80. The system may record multiple programs simultaneously by utilizingtuners which are not being utilized for recording at the current time.81. Picture-in-picture capabilities may be provided by use of a secondtuner in a single component or by the use of a tuner in another systemcomponent which is not being utilized at the current time. 82. Thesystem may reconfigure protected content into a format which can becopied to permanent media such as, but not limited to, a DVD-R or CD-R,via a valid system device type. 83. The system may allow copying ofprotected content onto permanent media, such as a DVD-R or CD-R, withinthe parameters specified by the protected content provider. 84. Thesystem may reconfigure content, for more efficient storage, on a remotemultimedia client or may reconfigure unprotected content, for moreefficient storage, on a non-system device which is external to thesystem. 85. Some content exchanged via system communications may beencrypted or modified to protect content. 86. The system may displayvarious television standards such as, but not limited to, NationalTelevision Standards Committee (NTSC), PAL, and high definition (HD) 87.The system may display video as either interlaced scanned frames,progressive scanned frames, or other protocols, as desired. 88. Thesystem may handle various audio formats such as, but not limited to,MP3, WAV, and AC3. 89. The system components may be controlled using anIR or RF remote control device. 90. The system may allow the user to usean RFID tag, or a similar device, to identify the user to the system,via the remote control, and automatically log the user into the system,if the user so chooses. 91. The system may allow the user to change theRFID tag, or similar device, at the request of the user. 92. A keyboard,keypad, or other input device may be used for inputting system functionsand configurations. 93. The system may use a video game emulatorfront-end to allow access to video games. 94. Video camera input may beallowed from a system or a non-system device and may contain both audioinformation and video information. 95. The system may be configured tostream or transfer stored or live content, such as TV, radio, or digitalvideo over the internet, or other data networks. 96. The system may beconfigured to stream or transfer protected content over the internet, orother data networks, to a valid system device using a secure connectionprotocol such as, but not limited to, VPN. 97. Recording schedules maybe adjusted via the internet, or some other data network, or via a WAPenabled, or with comparable protocol, wireless phone. 98. The system mayautomatically create a copy of a content file if requests for access aredetermined to be causing a sufficient conflict in accessing the originalcontent file. 99. The system may monitor status of connection tointernet, or other external network, and may notify the user when adownload process is interrupted and/or connection has been lost. 100.The system may allow the user, within the system, to reassign ownershipof content to another user, within system, with the approval of the newowner. 101. The system may encode information into content which maythen be used by system for security algorithms and/or license statusinformation. 102. The system may allow user to exclude a systemcomponent from being automatically considered for usage as a tunerand/or data storage location. 103. The system may allow anadministrative user account to be created. 104. The system may allow theadministrative user to have access to all content, to move content, tomake changes to individual user accounts, and/or have the ability tochange system wide settings. 105. The system may authenticate the validsystem device receiving content via the internet, or other data network,as part of the original system network sending the content. 106. Eachsystem component contains its own hardware and/or software functionalitybut overall control of the system can be maintained by the primarymultimedia server or multimedia storage server. 107. The system mayinteract with protected content provider internet web server, or acomparable device, to set the time period for which the content licenseis granted. 108. The system may allow instant messaging on systemcomponents with output display device. 109. The system component mayallow for the display of two or more sources of video information on anoutput device. 110. The system may allow control of various systemfunctions and/or content via the internet, or other data network, usinga valid system device. 111. The system may monitor and record the numberof times content is accessed. 112. The system may interact withprotected content provider internet web server, or a comparable device,to determine the number of times content has been accessed. 113. Whenrequesting removal of the primary multimedia server, the system mayallow the user to specify which secondary multimedia server to assign asthe new primary multimedia server or may allow user to specify amultimedia storages server as the system controller. 114. The system mayuse a graphical user interface (GUI) for the components which have avisual media output device. 115. The system components which displayvideo output or receive video, in a form requiring digitization, mayhave a video coder and/or decoder. 116. The system components whichserve as storage devices, such as the multimedia servers and multimediastorage servers may have router capabilities. 117. The system maycontain a web server to provide access to send data to and receive datafrom the internet. 118. The system may allow data stream to flow fromincoming input/output (I/O) to outgoing I/O when user is viewing videoor listening to audio in real time. 119. The system may allow usage ofdifferent port numbers for input and output of data to and from systemdevices. 120. In one exemplary embodiment, the multimedia storage serverdoes not comprise a tuner. 121. The system may allow user to query anddisplay the status of protected content. 122. The current status ofprotected content on the system may be stored in an extensible markuplanguage (XML) file, or a similar format file. 123. Local multimediaclients may have mass storage space sufficient to run the operatingsystem and related software. 124. The DVD/CD player/recorder may be insame enclosure as a multimedia server or multimedia storage server. 125.The content key may contain information which is stored in an XML file,or a similar format file. 126. The system may allow a multimedia storageserver as the system controller, even when a multimedia server isavailable within the system. 127. The system may allow for the periodicgeneration of a new private key within a system device for purposes ofenhanced security. 128. The system may allow for the generation of newprivate key within a system device using a seed from a random numbergenerator or some other source. 129. The system may allow compilationand storage of content usage history in a file called content usagehistory file. 130. The system may allow multiple content usage historyfiles to be created by the use of specific criteria, such as usage fordaily intervals or weekly intervals or usage for individual systemusers. 131. The system may allow deletion of selected content usagehistory from the content usage history file when the appropriate contentprovider has retrieved that information and given permission for thedeletion of the data. 132. The system may allow compilation and storageof the license status of content in a file called content license statusfile. 133. The system may allow the conversion of all encrypted contentkeys, content usage history files and content license status filescontained within a system device, from an old public key to new publickey, when a new private key is generated within that system device. 134.The system may include an additional level of validation for a validsystem device logging into system via the internet, or some other datanetwork. 135. The system may allow encryption of live content if needed.136. The system may incorporate the point-to-multipoint (PMP) wirelessprotocol to enhance the data distribution within the system 137. Thesystem may allow streaming content from an external provider to bestored on a storage device for a short period of time during thestreaming process to improve the quality of the streaming content. 138.The system may have an interactive program guide, which can search forcontent from various sources and display the content available in aconsolidated format to simplify the choice of programming to view,record, and/or import. 139. The system may allow information to becompiled and stored in the content license status file, relating to thenetwork identification, user identification, and device identificationto which each piece of content is assigned. 140. The system may includea web server which can be used to provide secure access to the system,from a valid system device or non-system device, via the internet. 141.The system may include the use of an additional means of useridentification, such hardware containing a security certificate, for auser accessing the system via the internet, or other data network. 142.Each system device may include an operating system but overall systemcontrol is given to a designated primary multimedia server or multimediastorage server. 143. Each system device may include multiple processorsto improve operating efficiency. 144. The system may allow flow of datawithin system to reduce contention and improve the efficiency of dataexchange and data usage.

BRIEF DESCRIPTION OF THE DRAWING FIGURES

FIG. 1 is a block diagram representation of a multimedia systemaccording to an illustrative form of the present invention showing thecontent flow between components within the system.

FIG. 2 is a block diagram showing flow between components within thesystem of FIG. 1 and components external to the system.

FIG. 3 is a block diagram showing the handling of input/output functionswithin the system of FIG. 1.

FIGS. 4A and 4B are block diagrams showing the flow of live and delayedcontent in the system of FIG. 1.

FIG. 5 is a block diagram showing use of a RFID tag to verify useridentification in accordance with an exemplary embodiment of the presentinvention.

FIG. 6 is a block diagram showing use dual data ports for sending andreceiving data in accordance with an exemplary embodiment of the presentinvention.

FIG. 7 is a flow chart showing the process for a request for contentaccess in accordance with an exemplary embodiment of the presentinvention.

FIG. 8 is a flow chart showing the process for a request for a record inaccordance with an exemplary embodiment of the present invention.

FIG. 9 is a flow chart showing the process for a request to find atelevision tuner in accordance with an exemplary embodiment of thepresent invention.

FIGS. 10A and 10B is a flow chart showing the process for a request forserver removal in accordance with an exemplary embodiment of the presentinvention.

FIG. 11 is a flow chart showing the process for a request for transferof protected content from a provider.

FIG. 12 is a block diagram showing a request for transfer of protectedcontent from a content provider in accordance with an exemplaryembodiment of the present invention.

FIG. 13 is a flow chart showing the process of a transfer of protectedcontent between system devices.

FIG. 14 is a block diagram showing a transfer of protected contentbetween system devices in accordance with an exemplary embodiment of thepresent invention.

FIG. 15 is a flow chart showing the process for a request for a contentlicense update from a provider in accordance with an exemplaryembodiment of the present invention.

FIG. 16 is a block diagram showing a request for a content licenseupdate from a provider in accordance with an exemplary embodiment of thepresent invention.

FIGS. 17A and 17B are a flow chart showing the process for a request tocreate a hard copy of protected content in accordance with an exemplaryembodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring now to the drawing figures, in which like reference numbersrefer to like parts throughout the several views, preferred forms of thepresent invention will now be described by way of example embodiments.It is to be understood that the embodiments described and depictedherein are only selected examples of the many and various forms that thepresent invention may take, and that these examples are not intended tobe exhaustive or limiting of the claimed invention. Also, as used in thespecification including the appended claims, the singular forms “a,”“an,” and “the” include the plural unless the context clearly dictatesotherwise. Ranges may be expressed herein as from “about” or“approximately” one particular value and/or to “about” or“approximately” another particular value. When such a range isexpressed, another embodiment includes from the one particular valueand/or to the other particular value. Similarly, when values areexpressed as approximations, by use of the antecedent “about,” it willbe understood that the particular value forms another embodiment.

As described herein, the term “content” is used to describe the dataand/or files that are imported, exported, and/or managed within thesystem. Such content can include audio files, video files, and videogame programs.

The present invention is embodied in a networked multimedia system whichcan import content via the internet, or other data network and createcontent within, from various sources, such as TV, radio and digitalcamera. The present invention allows for multiple user accounts,including an administrative account, to be created and allows content tobe assigned to specific users. An administrative account can control allsystem preferences and move or reassign ownership of any content. Forexample, content assigned to a specific user is not visible to otherusers, but any user can reassign content ownership, with the approval ofthe recipient.

The present invention allows the content provider to access and updatethe status of content, located within the system, which the provider ofthe content has previously supplied.

The present invention allows for transmission of data between thevarious system devices and also with other non-system devices.Transmission media include coaxial cables, copper wire, and fiberoptics. Transmission media can also take the form of acoustic or lightwaves, such as those generated during radio wave and infrared datacommunications.

FIG. 1 is a block diagram of a system 100 showing the pathways forsending and receiving content within the system 100. The system 100comprises a plurality of system components. Each system componentpreferably includes a processor unit and a software program to controlthat component, or other components as desired. All data within thesystem is preferably in digital form or converted into digital form.Data is exchanged in the form of data packets and/or frames, dependingupon the communication protocol being used.

The system 100 includes a primary multimedia server 101, a secondarymultimedia server 103, a multimedia storage server 102, a remotemultimedia client 104, and a DVD/CD player/recorder 105. Each of thesedevices preferably has some type of storage media such as, but notlimited to, a hard disk drive, DVD-RICD-R, or DVD-RAM. The system 100also includes a local multimedia client 106, which preferably does nothave content storage media but can include memory for program usage.

Preferably, the remote multimedia client 104 is a portable device thatcan be detached from the system 100. The detached remote multimediaclient 104 allows access to all content stored on it, includingprotected content such as DVD quality movies, which have been importedvia the internet from a remote location. Thus, content stored on theremote multimedia client 104 can then be accessed by the user at his orher convenience and at his or her preferred place of viewing and/orlistening.

In an exemplary embodiment, the primary multimedia server 101, thesecondary multimedia server 103, the remote multimedia client 104, andthe local multimedia client 106 each can have the ability to send andreceive TV signals. The primary multimedia server 101, the secondarymultimedia server 103, the remote multimedia client 104, and the localmultimedia client 106 can each include at least one encoder/decodercapable of working with at least one TV format (such as NTSC, PAL, andHD). Having multiple encoders is less important than having multipledecoders because a single encoder, which is efficient and compatiblewith the system 100, can be used while achieving one of the goals of thepresent invention.

Preferably, each decoder is operable to handle multiple codecs becausecontent may come from different sources such as DVDs, movie downloads,or internally generated content. Codecs can be hardware or softwarebased. Hardware based codecs, such as a dedicated digital signalprocessor (DSP) or field programmable gate arrays (FPGA), may be fasterand require less processor intervention but may offer less flexibilityon which codecs are available. The flexibility of the software basedcodecs are a high priority but must be balanced against the cost andcomplexity of the processor which may be desired. Alternatively,multiple decoders each can operate to handle a single codec, or a fewcodecs can be incorporated into each of the primary multimedia server101, the secondary multimedia server 103, the remote multimedia client104, and the local multimedia client 106.

Preferably, either the primary multimedia server 101 or the multimediastorage server 102 maintains primary control over the other systemcomponents. This control can be accomplished by running a softwareprogram on the primary multimedia server 101 (if the primary server isto maintain control) or on the multimedia storage server 102 (if themultimedia storage server 102 is to maintain control). The server incontrol can assign control to other system components for specifictasks, such as streaming data or moving data files. Preferably, thesecondary multimedia server 103 is running a similar core program to theprogram running on the control server but the secondary multimediaserver program relies upon the control server to direct which operationsand functions for which the secondary multimedia server 103 isresponsible. The secondary multimedia server 103 can also contain somedata and files duplicated from the control server which allows thesecondary multimedia server 103 to become the primary multimedia server101, if the primary multimedia server (if control server) or themultimedia storage server 102 (if control server) is unexpectedlyremoved from the system.

The system 100 can have various analog or digital devices connected toit. Such devices can include, but are not limited to, a digital camera107, a radio tuner 108, a video game player 109, and a telephonytransceiver 110.

The digital camera 107 can be connected to the system 100 and can sendoutput (i.e., digital pictures or digital video) to the primarymultimedia server 101, the secondary multimedia server 103, or themultimedia storage server 102. The digital images from the camera 107can then be stored in any of the server's storage media and sent toanother system component or a non-system device, such as a web pageaccessed via the internet.

The radio tuner 108 can also be connected to the system 100 and can sendoutput to the primary multimedia server 101, the secondary multimediaserver 103, or the multimedia storage server 102. The audio data canthen be stored in any of the server's storage media and sent to anothersystem component, for example to the media output device of a systemcomponent which could be a TV or a headphone output from a remotemultimedia player. Then the audio data be stored and sent to yet anothersystem component (such as remote multimedia player, multimedia server ormultimedia storage server) or non-system device, such as to a web pageaccessed via the internet.

The video game player 109 can be connected to the system 100 and canaccess game software stored within the system 100 to allow the user toplay video games using an emulation interface or a hardware interface.The video game player 109 can download the game software from the system100 (i.e., a one-way communication) or use the game software which isstill stored on another system device (i.e., a two-way communication),depending on the configuration which is most advantageous.

The telephony transceiver 110 can be connected to the system 100 and canreceive VoiP phone calls via software running on the primary multimediaserver 101 (if control server) or the multimedia storage server 102 (ifcontrol server). The VoiP uses packet switching to send and receivedata, which is converted to or converted from an audio conversation. Thesystem can automatically notify user of an incoming phone call and thenallows the user to answer the call or accept voice mail from the caller.Preferably, the voice mail greeting is recorded in a digital format. Thegreeting is then sent in digital format, via the internet, to the callerwhere it is converted to an analog audio format for the caller to hear.The caller then provides a message in analog audio, which is convertedto digital format and sent, via the internet, back to the system forstorage. The system accepts and stores the caller's message in a digitalform, which can later be accessed by the user.

FIG. 2 is a block diagram showing the pathways for content sent orreceived from components external to the system 100. Typically, therecan be two kinds of external components: valid system devices 201, whichcan access protected content, and non-valid system devices 202, whichcannot access protected content. The valid system device 201 can be anysystem device capable of accessing the internet, or other data network,which is recognized by the system as a valid system device. Exemplaryvalid system devices 201 include any system component shown in FIG. 1that can provide proper validation credentials to the system. The system100 can verify that the component is a valid system device 201 by usingan algorithm which is located in the software and/or hardware of thecomponent. Preferably the valid system device 201 is capable interactingwith the system 100 to access system functionality such as sendingcontent to system, receiving content from the system, and performingsystem administrative functions. The non-valid system device 202 is adevice which can interact with the system to perform only certainfunctions. Preferably, a non-valid system device can access theinternet, but it cannot provide proper validation credentials to thesystem. Thus, the non-valid system device cannot gain access toprotected content. Exemplary non-valid system devices include a cellularphone which can modify the recording schedule, a MP3 player, which canstore unprotected content from the system, and a computer, which canstore and access unprotected content from the system.

An external content provider 203 can be connected to the system 100 andcan send content to various system components. The external contentprovider 203 can interact directly with system components to determineand modify the status of content that the provider has supplied. Theexternal content provider 203 can verify that the system componentreceiving content is a valid system device 201 which assures that theprotected content is not available to unauthorized parties or devices.The external content provider 203 can also test the connection speed andreport to the user the estimated download time for requested content,before the user chooses to begin the download process. Alternately, theexternal content provider 203 can automatically download content andautomatically resume download when an interruption occurs. Additionally,the external content provider 203 can adjust the time period for whichthe content license was originally granted, can verify that systemdevice receiving content is valid device type, can update data withinthe software or hardware of the system 100, which may be used in asecurity algorithm for access to the content of that content provider,can renew the content license without downloading the content again, andcan limit the number of times protected content can be viewed.

Preferably, the primary multimedia server 101 (if control server) or themultimedia storage server 102 (if control server) handles all contentsent or received from external sources. Alternately, the secondarymultimedia server 103 or the multimedia storage server 102 can handleall content sent or received from external sources. Preferably, theprimary multimedia server 101, or multimedia storage server 102 managesthe transfer of content and can also transfer control for specifictransfer tasks to the secondary multimedia server 103.

FIG. 3 depicts a block diagram showing the handling of content which isgenerated or handled within the system 100 according to an exemplaryembodiment. It should be noted that the input and output functionalityexamples used can be located within any system component. It should alsobe noted that even though FIG. 3 shows three inputs and four outputs,any number of devices can provide input, as well as any number of outputdevices can receive output from the system. It should be noted that theprimary multimedia server 101, the secondary multimedia server 103 andthe multimedia storage server 102 can have storage devices for storingcontent generated within the system 100 for any input or output.

In this exemplary embodiment, the source of input 304 is an analog TVsignal When the primary multimedia server 101 (if control server) or themultimedia storage server 102 (if control server) gives 1/0 305 a propercommand, the 1/0 305 begins sending the output from an encoder 306 to an1/0 307 (which supplies input to the primary multimedia server 101) or1/0 308 (which supplies input to the secondary multimedia server 103) or1/0 309 (which supplies input to the multimedia storage server 102) forstorage. The choice of which device will receive the input for storageis determined by the program running on the primary multimedia server101 or multimedia storage server 102, based upon a predeterminedalgorithm.

The source of input 310 is a digital TV signal. When the primarymultimedia server 101 (if control server) or the multimedia storageserver 102 (if control server) gives 1/0 311 a proper command, the 1/0311 begins sending the signal from input 310 to 1/0 307 or 1/0 308 or1/0 309 for storage. The choice of which device will receive the inputfor storage is determined by the program running on the primarymultimedia server 101 or multimedia storage server 102, based upon apredetermined algorithm.

The source of input 312 is an analog audio signal. When the primarymultimedia server 101 (if control server) or the multimedia storageserver 102 (if control server) gives 1/0 313 a proper command, the 1/0313 begins sending the output from an encoder 314 to 1/0 307 or 1/0 308or 1/0 309 for storage. The choice of which device will receive theinput for storage is determined by the program running on the primarymultimedia server 101 or multimedia storage server 102, based upon apredetermined algorithm.

The output from output 315 is an analog TV signal. When the primarymultimedia server 101 (if control server) or the multimedia storageserver 102 (if control server) gives 1/0 316 or 1/0 317 or 1/0 318 theproper command, the 1/0 316 or 1/0 317 or 1/0 318 begins sending theoutput to the 1/0 319 which then forwards the data to the decoder 320which then sends the decoded TV signal to the TV via output 315. Thechoice of which device will be the source of the data is determined bythe program running on the primary multimedia server 101 or multimediastorage server 102, based upon a predetermined algorithm.

The output from output 321 is a digital TV signal. When the primarymultimedia server 101 (if control server) or the multimedia storageserver 102 (if control server) gives 1/0 316 or 1/0 317 or 1/0 318 theproper command, the 1/0 316 or 1/0 317 or 1/0 318 begins sending theoutput to the 1/0 322 which then sends the signal to the digital TV viaoutput 321. The choice of which device will be the source of the data isdetermined by the program running on the primary multimedia server 101or multimedia storage server 102, based upon a predetermined algorithm.

The output from output 323 is a digital audio signal. When the primarymultimedia server 101 (if control server) or the multimedia storageserver 102 (if control server) gives 1/0 316 or 110 317 or 1/0 318 theproper command, the 1/0 316 or 1/0 317 or 1/0 318 begins sending theoutput to the 1/0 324, which then sends the signal to the deviceconnected to output 323. The choice of which device will be the sourceof the data is determined by the program running on the primarymultimedia server 101 or multimedia storage server 102, based upon apredetermined algorithm.

The output from output 325 is an analog audio signal. When the primarymultimedia server 101 (if control server) or the multimedia storageserver 102 (if control server) gives 1/0 316 or 1/0 317 or 1/0 318 theproper command, the 1/0 316 or 1/0 317 or 1/0 318 begins sending theoutput to the 1/0 326 which then forwards the data to the decoder 327which then sends the decoded audio signal to the device connected tooutput 325. The choice of which device will be the source of the data isdetermined by the program running on the primary multimedia server 101or multimedia storage server 102, based upon a predetermined algorithm.

FIG. 4A depicts a block diagram showing the flow of live content. 1/0401 sends a data stream being generated by a system device (i.e., avalid or non-valid system device), such as a TV tuner, radio tuner ordigital camera, to 1/0 402. The 1/0 402 determines whether data streamfrom 110 401 is live or delayed based upon information from the systemsoftware. The system software determines this status based upon whetherthe user is choosing to delay content or view it live. Preferably, ifthe content is viewed live, then an identical data stream is sent tostorage device 403, to be saved on a storage media, and to 110 404. Thedata is then sent directly from 1/0 404 to 1/0 405. The data is thensent from 1/0 405 to the appropriate output device, such as a TV oraudio amplifier. Preferably, the 1/0 402 and 1/0 404 are both parts ofthe 1/0 of a system component but are separated in FIGS. 4A and 4B toclarify that the signal source going to 1/0 404 can vary depending uponwhether the content is being viewed live or delayed.

FIG. 4B depicts a block diagram showing the flow of delayed content. Theflow of content differs from that displayed in FIG. 4A if the systemsoftware determines that the user chooses to view the content later intime. In this case, 1/0 406 sends a data stream generated by a systemdevice (i.e., a valid or non-valid system device), such as a TV tuner,radio tuner or digital camera, to 1/0 407. Since the content is beingdelayed, the data stream is sent to storage device 403, to be saved on astorage media. The delayed content, which was previously stored from thedata stream, is then sent to 1/0 408 in the direction (forward orreverse) and frame rate specified by the user while the storage devicecontinues to save the live content stream if there is still a livestream. The delayed content is then sent from 1/0 408 to 1/0 409. Thedelayed data is then sent from 1/0 409 to the appropriate output device,such as a TV or audio amplifier.

If the user chooses to return to the live content viewing option, thenthe data flow path will revert to the direct path from 1/0 402 to 1/0404, as described earlier in the live content flow method.

FIG. 5 depicts a block diagram representation of user authenticationusing an RFID tag 501. Preferably, the RFID tag 501 automates a loginvia a remote control 502. The RFID tag 501 emits a signal which isdetected by the remote control 502. The remote control 502 receives thelogin information, in the signal from the RFID tag 501, and transmitsthat information to the system component 503, which can be the remotecontrol. The system component 503 then uses that information toauthenticate the user and log the user into the system 100 or performwhatever predetermined functions are specified by the user.Alternatively, other forms of user authentication, including the use ofuser identification and a password, biometric login methods or anycombination of these measures, can also be used.

FIG. 6 shows the use of multiple ports for handling of input/output. The1/0 601 sends data on IP1:Port1 (IP address 1:Port_1—an example could be1111.1111.111.0001:0001), receives data on IP1:Port2 and handles allsystem control communications on IP1:Port3. The 1/0 602 is the 1/0section of the system storage device 603. The 1/0 602 uses IP2:Port2 toreceive data, IP2:Port1 to send data and handles all system controlcommunications on IP2:Port3. The 1/0 604 sends data on IP3:Port1,receives data on IP3:Port2 and handles all system control communicationson IP3:Port3. Using this configuration throughout the system allows alldevices to consider data on port 1 as outgoing data, data on port 2 asincoming data and all data on port 3 as system control. This can helpsimplify data handling and movement within the system.

FIG. 7 shows a flowchart representation of a process 700 for requestingaccess to content. Beginning at step 701, the user requests access tocontent, such as via the remote control. At step 702, the system 100determines if the content requested is protected content. If the system100 determines, at step 702, that the content is not protected, then thesystem 100 allows access to the content by any valid system device ornon-valid system device without restriction at step 703, and the process700 ends. If the system 100 determines, at step 702, that the content isprotected, then the system determines at step 704, if the device typerequested is a valid device type.

If the system 100 determines that device type is not a valid devicetype, then at step 705, the system displays a message to the user thattells the user that device is not valid. Thus, access is denied at step706, and the process 700 ends. If the system 100 determines that thedevice is a valid device, then the process 700 proceeds to step 707.

At step 707, the system 100 determines whether the license for thecontent is valid. If at step 707, the system 100 determines that thelicense is valid, then full access to the content is granted on thesystem device at step 708. If, however, at step 707, the system 100determines that the license is not valid, then the process 700 proceedsto step 709 and displays a message to the user asking the user to choosewhether to renew the license. The process 700 proceeds to step 710,where it determines whether input has been received to update the statusof the license. If input has been received to update the status of thelicense, then the system 100 updates the license at step 711, and loopsback to step 701. If, however, the system 100, at step 710, determinesthat no input has been received to update the license (or if input hasbeen received not to update the license), then the system 100 displays amessage at step 713 to the user stating that the license is not validand denies access to the content at step 714. The process 700 then ends.

FIG. 8 shows a flowchart representation of logic 800 used in determiningwhich tuner should be used for a recording process. Beginning at step801, a request to record is received from a system component. At step802, the system 100 determines whether the tuner of the system componentrequesting the recording is available. If the tuner is available (i.e.,a tuner is available when it is not being used by the system for anotherpurpose, such as viewing or recording) at that time, the tuner isselected to record at step 803, and the recording of the content beginsat step 804. If, however, the system 100 determines that the tuner ofthe system component requesting the recording is not available, then thesystem determines whether an unused tuner is available elsewhere in thesystem at step 805. If another tuner is available, then the systemselects the available tuner for recording at step 806. The recording ofthe content begins at step 807.

If, however, the system 100 determines that an unused tuner is notavailable elsewhere in the system, the system then determines if thesystem component requesting the recording is in fact recording othercontent at step 808. If the system component is not recording othercontent, then the system 100 selects the system component's tuner forrecording at step 809. The recording of the content then begins at step810. If the system component is in fact recording other content, thesystem then determines that step 811 whether there is any tuner in thesystem that is not in fact recording content. If no other tuner isavailable, the system records an error at step 812, and the recordingprocess 800 is aborted. If the system 100 determines that a tuner withinthe system is not recording, then the system selects that tuner forrecording at step 813. From there, the process 800 for recording beginsat 814.

FIG. 9 shows a flowchart representation of logic 900 used in determiningwhich tuner should be used for content viewing. Beginning at step 901,the system receives a request from the user for program viewing. As step902, the system 100 determines whether the system component requestingthe viewing has its own tuner. If the system 100 determines that thesystem component does not have its own tuner, the system thendetermines, as step 903, whether there is an unused tuner availablewithin the system. If the system 100 determines that there is an unusedtuner available, then the system selects the unused tuner for programviewing at step 904, and the system begins using that tuner at step 905.If at step 903, the system determines that an unused tuner is notavailable, the system displays a message to the user telling the userthat no tuner is available at step 906. The system 100 will then waitfor the user to input the next command at 907, and the process 900 ends.

If at step 902 the system 100 determines that the requesting systemcomponent does have its own tuner, the system determines whether thatspecific tuner is currently recording content at 908. If the tuner isnot recording content, the system 100 selects the requesting component'stuner for program viewing at step 909, and the system begins using thetuner at step 910. If, however, that requesting component's tuner iscurrently recording other content, then the system 100, at step 911,determines whether there is an available tuner elsewhere in the system.If there is not an available tuner within the system, the system 100displays a message to the user telling the user that no tuner isavailable at step 912. The system will then wait for the user to inputthe next command at 913, and the process 900 ends. If, however, there isan available tuner within the system, the system 100 selects theavailable tuner for program viewing at step 914, and the system beginsusing the tuner at step 915. The process 900 then ends.

FIGS. 10A and 10B show a flowchart representation of logic 1000 used torequest removal of a multimedia server 101 or 103. Beginning at step1001, a request is received to remove a multimedia server (i.e., 101 or103). At step 1002, the system 100 determines whether content will beremoved from the server. If content is to be removed, the system at step1003 determines whether there are other multimedia servers within thesystem. If another multimedia server is available, then the system 100,at step 1004, selects a new primary multimedia server from among theother multimedia servers within the system. The content on the originalprimary multimedia server is then moved {and/or copied) to the newprimary multimedia server at step 1005. The system 100 then displays amessage telling the user that the original multimedia server can beremoved at step 1006. The logic 1000 then ends, and the user canphysically remove the original multimedia server.

If, however, at step 1003 another multimedia server is not available,then the system determines whether a multimedia storage server isavailable at step 1007. If no multimedia storage server is available,the system displays a message telling the user that no other server isavailable at step 1008. The system will then wait for the user to inputthe next command, and the logic for requesting removal of the multimediaserver ends.

If at step 1007, the system determines that a multimedia storage serveris available, then the system 100, at step 1010, selects the multimediastorage server as the system controller. Then, the content located onthe original primary multimedia server is copied and/or moved to themultimedia storage server at step 1011. The content can be moved orcopied, as determined by the user. The system can also make a copyautomatically if the original is being requested to the extent that itis causing degradation of the quality of content being delivered to theusers. At step 1012, the system 100 displays a message to the usertelling the user that the multimedia system can be removed. The logic1000 for requesting removal of the multimedia server ends.

If, referring back to step 1002, the system determines that content isnot to be removed from the multimedia server, then the system 100proceeds to step 1020 (as depicted in FIG. 10B). At step 1020, thesystem determines whether the primary multimedia server is the server tobe removed. If the system 100 determines that the server to be removedis not the primary multimedia server, then the system as step 1021displays a message to the user telling the user that the server can beremoved. The logic 1000 for removing a server then ends, and the usercan then physically remove the server.

If, however, the system 100 determines the primary multimedia server isthe server to be removed, then the system at step 1022 determines ifthere is another multimedia server within the system. If there isanother multimedia server in the system, then the system 100 selects anew primary multimedia server from among the other multimedia servers inthe system at step 1023. Then, the system 100 displays a message to theuser telling the user that the multimedia server can now be removed atstep 1024. The logic 1000 for removing the server then ends, and theuser can physically remove the server.

If, on the other hand, another multimedia server is not within thesystem, then the system determines at step 1025 whether a multimediastorage server is available. If no multimedia storage server isavailable, then the system displays a message to the user telling theuser that no other server is available at step 1026. The system willthen wait for the next command, and the logic 1000 for removing theserver ends. If the system determines a multimedia storage server isavailable, the system selects the multimedia storage server as thesystem controller at step 1028. Next, the system 100 displays a messageto the user telling the user that the multimedia server can now beremoved. Then, the logic 1000 for removing a server then ends, and theuser can physically remove the server.

FIG. 11 shows a flowchart representation of a process 1100 of requestingprotected content from the external content provider 203. Beginning atstep 1101 the system 100 requests protected content from the externalcontent provider. Next, the system 100 receives a request from thecontent provider for verification of a valid device type at step 1102.The system 100, at step 1103 determines whether the device type isvalid. If the device type is not valid, then the system 100, at step1104, displays a message on the system to the user stating that thecontent cannot be transferred. Thus, the content is not transferred, andthe process 1100 ends.

If, however, the system determines that the device type is valid, thenthe system receives a request from the external content provider for thestatus of other protected content sent to the system at step 1105. Thesystem 100 then sends status information to the content provider at step1106. At step 1107, the system 100 receives instruction from the contentprovider. Based on the instruction received from the content provider,the system determines if it is eligible to receive additional content atstep 1107. If the system 100 is eligible to receive additional content,then the system receives a request from the content provider for thepublic key from the system device at step 1109. Next at step 1110, thesystem device sends its public key to the content provider so that thecontent key sent from the content provider can be encrypted with thesystem device's public key. At step 1111, the system 100 receives thecontent key that is encrypted with the system device's public key andthe content, which is encrypted using the content key. The process 1100of requesting protected content from the content provider ends.

If, however, at step 1108 the system determines it is not eligible toreceive additional content, then the system displays a message askingthe user if he or she chooses to update the content license at step1112. The system then determines at step 1113 whether it has received aninput to update the content license. If the system does receive an inputto update the content license, the content license is updated at step1114, and the process 1100 can loop back to step 1101, where the system,now with the updated content license, requests protected content fromthe content provider. If no input is received or if an input is receivednot to update the content license, then the process 1100 of requestingprotected content from the content provider ends.

With this capability, the user and the content provider have aninteractive relationship that allows considerable flexibility and easeof use for the user. An example of this process can occur when a userchooses to download a new movie to the system. The content provider cancheck the total quantity of movies that the user has in use by mailorder rental, in-store rental, and downloaded rental. Thus, thisembodiment is an improvement upon the prior art because it allows thecontent provider the capability to check the total quantity of movies,music, video games or other content which the user has in use by mailorder rental, in-store rental, or downloaded rental as compared to justthe status of the mail order items. This allows instant return of itemsby the system user which then allows checkout of additional content.

It is important to note here that the content key, referred tothroughout this document is the key used to encrypt the protectedcontent and is then used to decrypt the content for usage. Twoadditional files are also used by the system for storing relevantinformation for future use by the system or content provider. One suchfile is the content license status file, which includes various types ofinformation relating to how the content may be used such as name ofcontent provider, content description, license information, timerestraints on usage, number of allowed usages, quantity of copiesallowed, and the network where content stored. Another such file is thecontent usage history file, which contains data related to content usagehistory.

FIG. 12 depicts a block diagram representation of the relationshipbetween the system 100 and the external content provider 203 when thesystem requests protected content from the content provider. The system100 requests protected content from the content provider 203 at step1202. Once the content provider 203 receives this request, the contentprovider requests verification of a valid device type from the system100 at step 1204. Upon receiving this information, the system 100 sendsverification of a valid device type to the content provider 203 at step1205. Once the content provider 203 verifies a valid device type, thecontent provider requests the status of previously sent content from thesystem 100 at step 1206. Then at step 1207, the system 100 sends thestatus of previously sent content to the content provider 203. If thecontent provider 203 determines that the status information isacceptable, the content provider then requests the public key from thesystem 100 at step 1208. Then the system 100 sends the public key to thecontent provider 203 at step 1209. Once the public key is received, thecontent provider encrypts the content key and transfers the content keyand content encrypted using the content key to the system 100 at step1210.

FIG. 13 depicts a flowchart representation of a process 1300 for movingcontent between two system devices. Beginning at step 1301, the system100 receives a request to transfer protected content from one systemdevice to another system device. It should be noted that the request fortransfer can be initiated by the sending device, receiving device, or bya third system device not currently involved in the transfer. Forexample, the user can network to the system, via the internet using avalid system device, and can instruct the system to move protectedcontent from a multimedia server to a remote multimedia server, so thatthe remote multimedia server can later be detached from the system andused to view the protected content while traveling. Another example canoccur when a user accessing a local multimedia client instructs thesystem to move protected content from a multimedia server in the home toa multimedia server in an automobile, which is located in the garage ofthe home, via a wireless connection, so the user can view the protectedcontent in the automobile.

As step 1302, the sending device verifies that the receiving device is avalid device type. For purposes of this discussion, the sending deviceis the device containing the content to the transferred, and thereceiving device is the device that is to receive the content from thesending device. If the system 100 determines as step 1303 that thedevice type is not a valid device type, then at the step 1304 the systemdisplays a message stating that the content cannot be transferred to thereceiving device. Thus, the process 1300 ends.

If, however, the system 100 determines that the device type is valid,then the sending device requests the public key from the receivingdevice at step 1305. At step 1306, the receiving device sends its publickey to the sending device. Upon receiving the public key, the sendingdevice, at step 1307, decrypts the content key with the private key andthen encrypts the content key with the receiving device's public key. At1308, the sending device transfers the content to the receiving devicewith the content key encrypted with the receiving device's public key.At this point, the process 1300 ends. It should be noted that theprotected content can be streamed from the sending device to thereceiving device, in an encrypted format, where it is decrypted by thereceiving device, using the private key, and accessed for use.

FIG. 14 depicts a block diagram representation of the relationshipbetween the sending device and the receiving device when the receivingdevice requests protected content from the sending device. The receivingdevice 1401 requests protected content from the sending device 1402 atstep 1403. Upon receipt of the request, the sending device 1402 requestsverification of a valid device type from the receiving device 1401 atstep 1404. Then at step 1405, the receiving device 1401 sendsverification of a valid device type to the sending device 1402. Thesending device 1402, in turn, requests the public key from receivingdevice 1401 at step 1406. Upon receiving the request for its public key,the receiving device 1401 sends the public key to the sending device1402 at step 1407. Then, the sending device 1402 transfers the encryptedcontent to the receiving device 1401 at step 1408.

FIG. 15 depicts a flowchart representation of a process 1500 a systemdevice undergoes when requesting a license update for protected contentfrom an external content provider. Beginning at step 1501, the systemdevice requests a content license update from the external contentprovider 203. At step 1502, the system 100 receives a request from thecontent provider 203 for verification of a valid device type. The system100, at step 1503, determines if the device type is valid. If the devicetype is not valid, then the system 100 displays a message to the userstating that the content license cannot be updated at step 1504. Theprocess 1500 for requesting a license update for protected content ends.

If, however, the system determines that the device type is valid, thenthe system notifies the content provider of the same at step 1505. Atstep 1506, the system 100 receives a request from the content provider203 for the public key from the system device. Next, the system devicesends its public key to the content provider at step 1507. Uponreceiving the system device's public key, the content provider encryptsthe updated content license status file with a system device public keyand then transfers the updated content license status file that isencrypted with the system device public key at step 1508. Next, thesystem device converts the old content license status file to the newcontent license status file by using its private key. At this point, theprocess 1500 ends.

This ability to check the status of content on the system 100 and updatethe content license instantly allows a considerable flexibility and easeof use for the user and a real-time inventory status update for thecontent provider. An example where this could be very advantageous forboth would be when a user chooses to download a new movie to the usersystem. The content provider can check the total quantity of movieswhich the user has in use by mail order rental, in-store rental, anddownloaded rental. If the content provider determines that the user hasthe maximum number of movies rented by mail order rental, in-storerental, and downloaded rental, then the content provider can allow theuser can choose to instantly ‘return’ an online movie, by licenserevocation, and then download a new movie for rental while stayingwithin the requirements specified by the content provider.

FIG. 16 depicts a block diagram representation of the relationshipbetween the system device 1601 and the external content provider 203when the system device 1601 requests a license update for protectedcontent from the external content provider 203. The system device 1601requests a content license update from the content provider 203 at step1602. At step 1604, the content provider 203 requests verification of avalid device type from the system device 1601. The system device 1601,in turn at step 1605, sends verification of a valid device type to thecontent provider 203. Upon receiving verification of a valid systemdevice, the content provider 203, at step 1606, requests the public keyfrom system device 1601. The system device 1601 then sends its publickey to content provider 203 at step 1607. Upon receiving the systemdevice's public key, the content provider 203 encrypts the contentlicense status file and transfers the updated content license statusfile to system device 1601 at step 1608.

FIGS. 17 and 17B depict a flow representation of a process 1700 ofconverting protected content to a hard copy. For this description, thesending device is the device sending the content and the receivingdevice is the device receiving and creating a copy of the content.Beginning at step 1701, the user requests protected content be convertedto a hard copy. At step 1702, the system 100 determines whether thedevice type is valid. If the device type is not valid, the system 100,at step 1703, displays a message to the user stating that the contentcannot be transferred. Then, the process 1700 ends. If, however, thedevice type is valid, then the system 100, at step 1704, determineswhether the license allows a copy to be made. If the license does notallow a copy to be made, the system 100 displays a message to the userasking the user if he or she chooses to update the content license. Theuser can then choose to update the license or not at step 1706. If theuser does not update the license, the process 1700 ends. If the userdoes choose to update the content license, the content license is thenupdated at step 1707, and the process 1700 can loop back to thedetermination box 1704.

If the system 100 determines that the license allows a copy to be madeat step 1704, then the sending device requests the public key from thereceiving device at step 1708. The receiving device then sends itspublic key to the sending device at step 1709. At the step 1710, thesending device decrypts the content key with its private key and thenencrypts the content key with the receiving device's public key. At step1711, the sending device transfers the content to the receiving devicewith the content key encrypted with the receiving device's public key.Next, the system 100 determines whether the content is in a format tomake copy at step 1712. If the content is in a proper format, thecontent is converted to a hardcopy at step 1713. At this point, theprocess 1700 then ends. If, however, the content is not in a format tomake a copy, then the receiving device decrypts the content key with itsprivate key and then decrypts a content and step 1714. Then at step1715, the receiving device encrypts the content and formats the contentsuch that a copy can be made. The content is then converted to ahardcopy at step the 1716, and the process 1700 then ends.

It should be noted that in some cases the content may be download fromthe content provider in a format which can be converted directly to ahard copy. In this case, the content can still be moved to a validsystem device such that the valid system device limits other uses of thecontent.

While the invention has been shown and described in preferred forms, itwill be apparent to those skilled in the art that many modifications,additions, and deletions can be made therein. These and other changescan be made without departing from the spirit and scope of the inventionas set forth in the following claims.

What is claimed is:
 1. A multimedia system, comprising: at least onecontrol server configured to receive a request for content from at leastone client device via a network; at least one content server configuredto send the content to the at least one client device via the network;specific content server providing content is modifiable according topredetermined criterion; and at least one license server configured to:receive a request from the at least one client device for a contentlicense, via the network, the content license comprising at least acontent key, the request being based upon a determination by the atleast one client device that the content is protected and requires acontent license, the request further comprising a public key associatedwith the at least one client device; receive information from the atleast one client device via the network, the information comprising auser authorization and a device authorization, wherein the deviceauthorization corresponds to a security rating of the at least oneclient device, the security rating of the at least one client devicebeing based on security specifications of software and hardware of theat least one client device; evaluate the information according to atleast one predetermined criterion; encrypt the content license with thepublic key; and send, after being encrypted using the public key, thecontent license to the at least one client device via the network. 2.The multimedia system of claim 1, wherein: the at least one clientdevice has an interactive program guide with a graphical user interface;and the interactive program guide is configured to display the contentavailable in a consolidated format and to provide a search to locate thecontent.
 3. The multimedia system of claim 1, wherein the at least oneclient device contains a secure system clock configured to preventaltering of system time by the user.
 4. The multimedia system of claim4, wherein the at least one client device has access to at least oneenhanced capability after a confirmation of the presence of the securesystem clock.
 5. The multimedia system of claim 1, wherein the at leastone client device contains a security algorithm which uses data withinat least one of: the software or the hardware, for use in determinationof the user authorization and the device authorization.
 6. Themultimedia system of claim 1, wherein the at least one client deviceuses a security algorithm with data from at least one of: the softwareor the hardware, of the at least one client device, to deriveinformation used to implement the content usage parameters.
 7. Themultimedia system of claim 1, wherein at least one security certificateis used for communication of information related to the at least one of:content key, a session key, a token, content usage parameters, a userauthorization, device authorization, status of content previously sent,content owned or purchased by user, or a status of the contentrequested.
 8. The multimedia system of claim 1, wherein the contentlicense comprises at least one content key and at least one contentusage parameter.
 9. The multimedia system of claim 1, wherein at leastone content key is embedded with the content.
 10. The multimedia systemof claim 1, wherein at least one content usage parameter is embeddedwith the content.
 11. The multimedia system of claim 1, wherein at leastone communication between the at least one client device and the licenseserver is encrypted.
 12. The multimedia system of claim 11, wherein theat least one communication is encrypted via an asymmetrical encryption.13. The multimedia system of claim 12, wherein the asymmetricalencryption employs public key-private key encryption.
 14. The multimediasystem of claim 1, wherein the at least one client device is at leastone of: a game console, a digital video recorder, a television, asatellite television receiver, a cable television receiver, a digitalcamera, a computer, a content storage device, a radio receiver, atelephony device, an optical storage device, a set-top box, or a digitalmedia player.
 15. The multimedia system of claim 1, wherein the userauthorization specifies at least one of: information related to contentpreviously sent to the user, user subscription information, informationrelated to user authorization for additional content, or at least oneuser permission related to content access.
 16. The multimedia system ofclaim 1, wherein the device authorization specifies at least one of: theat least one client device has a proper security rating and isregistered to a valid user domain, the at least one client device has aproper security rating and contains a secure system clock, or the atleast one client device has a proper security rating and is registeredto the user.
 17. The multimedia system of claim 1, wherein the contentis at least one of: data, audio, or video.
 18. The multimedia system ofclaim 1, wherein the at least one client device comprises a computingdevice and a software executable configured to graphically display thecontent.
 19. The multimedia system of claim 1, wherein the at least oneclient device comprises a computing device configured to store content,the content being transmitted via a network, from a source locatedlocally or remotely.
 20. The multimedia system of claim 19, wherein thecomputing device is configured to store the content license, the contentlicense being transmitted via a network, from a source located locallyor remotely.
 21. The multimedia system of claim 20, wherein thecomputing device is further configured to allow detachment from thenetwork after the content and content license are stored on thecomputing device.
 22. The multimedia system of claim 21, wherein thecomputing device is further configured to allow content usage, whiledetached from the network, based at least upon at least one usageparameter.
 23. The multimedia system of claim 1, wherein a contentprovider updates data within at least one of: the software and thehardware, of the at least one client device.
 24. The multimedia systemof claim 24, wherein the content provider sends the data to update thepublic/private key pair associated with the at least one client device.25. The multimedia system of claim 24, wherein the at least one clientdevice uses at least one algorithm to calculate at least one publickey-private key encryption pair for the at least one client device basedupon at least one of: a time that data is sent from the contentprovider, a predetermined schedule, or at least one securityrequirement.
 26. The multimedia system of claim 1, wherein the contentfurther comprises at least one of: content that is purchased by a user,content that is rented by the user, or content that is part of asubscription associated with the user.
 27. The multimedia system ofclaim 1, wherein the control server is further configured to authorize auser with data received from the at least one client device, the datacomprising at least one of: radio frequency identification informationrelated to the user, alphanumeric information related to the user,combined alphanumeric and password information related to the user, orbiometric information related to the user.
 28. The multimedia system ofclaim 17, wherein the video is previously recorded video.
 29. Themultimedia system of claim 17, wherein the video is at least one of: amovie or a television program.
 30. The multimedia system of claim 1,wherein at least one communication between the at least one clientdevice and the content server is encrypted.
 31. The multimedia system ofclaim 30, wherein the content is encrypted via symmetrical encryption.32. The multimedia system of claim 1, wherein the network is a wide areanetwork.
 33. The multimedia system of claim 1, wherein the at least onecontrol server is further configured to authenticate a user with datareceived from the at least one client device, the data comprising atleast one of: a radio frequency identification device, alphanumericinput received from a user, alphanumeric and password input receivedfrom a user, or biometric information related to a user.
 34. A method,comprising: receiving, in at least one control server, a request forcontent from at least one client device via a network; transmitting, bythe at least one content server, the content to the at least one clientdevice via the network. receiving, in at least one license server, arequest for a content license from the at least one client device viathe network, the content license comprising at least a content key, therequest being based upon a determination by the at least one clientdevice that the content is protected and requires a content license, therequest further comprising a public key associated with the at least oneclient device; receiving, in the at least one license server,information from the at least one client device via the network, theinformation comprising a user authorization and a device authorization,wherein the device authorization corresponds to a security rating of theat least one client device, the security rating of the at least oneclient device being based on security specifications of software andhardware of the at least one client device; evaluating, in the at leastone license server, the information according to predeterminedcriterion; encrypting, in the at least one license server, the contentlicense with a public key associated with the at least one clientdevice; transmitting, by the at least one license server, the encryptedcontent license to the at least one client device via the network;decrypting, in the at least one client device, the content license usinga private key associated with the at least one client device; anddecrypting, in the at least one client device, the content using the atleast one content key.
 35. The method of claim 34, wherein the requestfor content is selected on the at least one client device, via aninteractive program guide, utilizing a graphical user interface, whichis configured to display the content available in a consolidated format,wherein at least some of the content available is searchable using asearch requested via the at least one client device.
 36. The method ofclaim 34, wherein the at least one client device contains a securesystem clock configured to prevent altering of system time by the user.37. The method of claim 36, wherein the at least one client device hasaccess to at least one enhanced capability after a confirmation of thepresence of the secure system clock.
 38. The method of claim 34, whereinthe at least one client device contains a security algorithm which usesdata within at least one of: the software or the hardware, for use indetermination of the user authorization and the device authorization.39. The method of claim 34, wherein the at least one client device usesa security algorithm with data from at least one of: the software or thehardware, of the at least one client device, to derive information usedto implement the content usage parameters.
 40. The method of claim 34,wherein at least one security certificate is used for communication ofinformation related to the at least one of: content key, a session key,a token, content usage parameters, a user authorization, deviceauthorization, status of content previously sent, content owned orpurchased by user, or a status of the content requested.
 41. The methodof claim 34, wherein at least one content key is embedded with thecontent.
 42. The method of claim 34, wherein at least one content usageparameter is embedded with the content.
 43. The method of claim 34,wherein the content further comprises at least one of: content that ispurchased by a user, content that is rented by the user, or content thatis part of a subscription associated with the user.
 44. The method ofclaim 34, wherein the at least one client device is at least one of: agame console, a digital video recorder, a television, a satellitetelevision receiver, a cable television receiver, a digital camera, acomputer, a content storage device, a radio receiver, a telephonydevice, an optical storage device, a set-top box, or a digital mediaplayer.
 45. The method of claim 34, wherein the user authorizationspecifies at least one of: user subscription information, informationrelated to content previously sent the user, information related to userauthorization for additional content, or at least one user permissionrelated to content access.
 46. The method of claim 34, wherein thedevice authorization specifies at least one of: the at least one clientdevice has a proper security rating and is registered to a valid userdomain, the at least one client device has a proper security rating andcontains a secure system clock, or the at least one client device has aproper security rating and is registered to the user.
 47. The method ofclaim 34, wherein the network is a wide area network.
 48. The method ofclaim 34, wherein the at least one control server is further configuredto authenticate a user with data received from the at least one clientdevice, the data comprising at least one of: a radio frequencyidentification device, alphanumeric input received from a user,alphanumeric and password input received from a user, or biometricinformation related to a user.